1. Field of the Invention
The invention relates generally to systems and methods of managing information about a plurality of computers and, more particularly, to systems and methods for discovering and reporting information about software usage on such computers.
2. Background Information
In a large scale network of a plurality of computers, such as for a multinational corporation or a government entity, it is a challenge to track the usage of the many software programs, and the executable files that make up such programs that are installed on each computer in the network. It is important to maintain accurate information about the usage of programs in order that, for example, an administrator can make informed decisions about the necessity of maintaining current licenses for the multitude of applicant executable files (sometimes referred to herein as simply “executables”) The aggregate of a set of executable files make up software programs that are installed on the computers in the network. Also of interest to an administrator is the manner in which the executables are allocated within the network. More particularly, there may be many application executable files installed on such computers for which single or multiple user licenses are being paid and maintained, and in some cases, such executables are rarely, if ever, used or accessed.
Current versions of the Windows® operating system and other operating systems do not provide direct, reliable information about the usage of software on a computer and/or a network of computers. As yet, there is not a system or method for reliably and efficiently collecting and maintaining such information in a non-invasive way. Currently available products monitor application usage invasively, at run-time of the monitored application. Such products add overhead to the operation of each computer and can contribute to unreliability of the computer through the monitoring methods they use. In addition, those products can only provide usage information prospectively after they are installed on the computer.
Therefore, there remains a need for a system that tracks and maintains records of software usage, version, recency of use and the like for a computer system containing multiple computers, or for an individual computer.